<!-- 我的表格 -->

<template>
  <el-form class="marginBottom">
    <WebTable class="QuotaDistribute-MyTable" noPage auto>
      <RowDict
        v-if="param.quotaCategory === DICT.TAB[0][0]"
        label="能源类型"
        bind="type"
        :dict="DICT.TYPE"
        :minWidth="120"
      >
        <template #suffix="{ row }">量 ({{ CORE.dict(DICT.TYPE, row.type, 3) }})</template>
      </RowDict>

      <RowDict
        v-else-if="param.quotaCategory === DICT.TAB[1][0]"
        label="用能区域"
        bind="entityId"
        :dict="area_selectDict"
        :minWidth="120"
      />

      <RowText v-else bind="type" :minWidth="120" />

      <RowSlot v-for="item in 12" :key="item" :label="`${item}月`">
        <template #default="{ row }">
          <FormNum :one="getChild(row)" :bind="`month${item}`" noBtn noLabel noMargin />
        </template>
      </RowSlot>
    </WebTable>
  </el-form>
</template>

<script>
// ============================== 导入依赖 ============================== //

import CORE from '@/CORE'

// ============================== 导出组件 ============================== //

export default {
  /**
   * 名称定义 (实际使用名称)
   */
  name: 'MyTable',

  /**
   * 混入列表 (配置选项合并)
   */
  mixins: [CORE.mixWeb(), CORE.mixSelect('area', 'area_')],

  /**
   * 本地方法 (轻量重要在前)
   */
  methods: {
    /**
     * 获取子项
     */
    getChild(row) {
      const { list } = this
      const matched = list.find(item => item.id === row.id) || {}
      return matched
    },
  },
}
</script>

<style lang="scss">
@import './index.scss';
</style>
